libxl: fork: Provide libxl_childproc_sigchld_occurred
authorIan Jackson <ian.jackson@eu.citrix.com>
Thu, 16 Jan 2014 16:57:27 +0000 (16:57 +0000)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Thu, 6 Feb 2014 14:20:19 +0000 (14:20 +0000)
commitee84b79fbdfc8d00bc37f6659eddc991715e5287
treefa0cd1ca61bab3aec8a083dcbe9871bfdaf08eca
parent7916a9023cd8ab159a3d6a870068a35c099d515f
libxl: fork: Provide libxl_childproc_sigchld_occurred

Applications exist which don't keep track of all their child processes
in a manner suitable for coherent dispatch of their termination.  In
such a situation, nothing in the whole process may call wait, or
waitpid(-1,,).  Doing so reaps processes belonging to other parts of
the application and there is then no way to deliver the exit status to
the right place.

To facilitate this, provide a facility for such an application to ask
libxl to call waitpid on each of its children individually.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Cc: Jim Fehlig <jfehlig@suse.com>
Cc: Ian Campbell <Ian.Campbell@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
tools/libxl/libxl_event.h
tools/libxl/libxl_fork.c